package com.sdhs.costcontrol.mapper;

import java.util.List;
import com.sdhs.costcontrol.domain.GcControlConfirmationPurchaseList;
import org.apache.ibatis.annotations.Param;

/**
 * 成本控制--采购确认-明细Mapper接口
 *
 * @author andong
 * @date 2025-03-17
 */
public interface GcControlConfirmationPurchaseListMapper
{
    /**
     * 查询成本控制--采购确认-明细
     *
     * @param id 成本控制--采购确认-明细主键
     * @return 成本控制--采购确认-明细
     */
    public GcControlConfirmationPurchaseList selectGcControlConfirmationPurchaseListById(Long id);


    public List<GcControlConfirmationPurchaseList>  selectGcPurchaseListByPurchaseId(Long id);

    /*根据采购确认id查询当前采购的总数量*/
    public List<GcControlConfirmationPurchaseList>  selectTotalByPurchaseId(@Param("ids") Long[] id,
                                                                            @Param("procurementType") String procurementType);

    /**
     * 查询成本控制--采购确认-明细列表
     *
     * @param gcControlConfirmationPurchaseList 成本控制--采购确认-明细
     * @return 成本控制--采购确认-明细集合
     */
    public List<GcControlConfirmationPurchaseList> selectGcControlConfirmationPurchaseListList(GcControlConfirmationPurchaseList gcControlConfirmationPurchaseList);

    /**
     * 新增成本控制--采购确认-明细
     *
     * @param gcControlConfirmationPurchaseList 成本控制--采购确认-明细
     * @return 结果
     */
    public int insertGcControlConfirmationPurchaseList(GcControlConfirmationPurchaseList gcControlConfirmationPurchaseList);

    /**
     * 修改成本控制--采购确认-明细
     *
     * @param gcControlConfirmationPurchaseList 成本控制--采购确认-明细
     * @return 结果
     */
    public int updateGcControlConfirmationPurchaseList(GcControlConfirmationPurchaseList gcControlConfirmationPurchaseList);

    /**
     * 删除成本控制--采购确认-明细
     *
     * @param id 成本控制--采购确认-明细主键
     * @return 结果
     */
    public int deleteGcControlConfirmationPurchaseListById(Long id);

    public int deletePurchaseListByIds(Long id);

    /**
     * 批量删除成本控制--采购确认-明细
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGcControlConfirmationPurchaseListByIds(Long[] ids);
}
